package com.ruoyi.order.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 订单状态跟踪对象 sales_trace
 * 
 * @author ruoyi
 * @date 2025-01-02
 */
public class SalesTrace extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 订单编码 */
    private String orderId;

    /** 客户编码 */
    @Excel(name = "客户编码")
    private String customerId;

    /** 发货地址 */
    @Excel(name = "发货地址")
    private String shippingAddress;

    /** 预计发货日期 */
    @Excel(name = "预计发货日期")
    private String estimatedShippingDate;

    /** 实际发货日期 */
    @Excel(name = "实际发货日期")
    private String actualShippingDate;

    /** 物流公司 */
    @Excel(name = "物流公司")
    private String logisticsCompany;

    /** 物流单号 */
    @Excel(name = "物流单号")
    private String logisticsNumber;

    /** 运输方式 */
    @Excel(name = "运输方式")
    private String transportMode;

    /** 中转站 */
//    @Excel(name = "中转站")
//    private String transferStation;
//
//    /** 到达中转站时间 */
//    @Excel(name = "到达中转站时间")
//    private String arrivalTimeAtTransfer;

    /** 最终目的地 */
    @Excel(name = "最终目的地")
    private String finalDestination;

    /** 预计到达时间 */
    @Excel(name = "预计到达时间")
    private String estimatedArrivalTime;

    /** 实际到达时间 */
    @Excel(name = "实际到达时间")
    private String actualArrivalTime;

    /** 备注 */
    @Excel(name = "备注")
    private String note;

    public void setOrderId(String orderId) 
    {
        this.orderId = orderId;
    }

    public String getOrderId() 
    {
        return orderId;
    }
    public void setCustomerId(String customerId) 
    {
        this.customerId = customerId;
    }

    public String getCustomerId() 
    {
        return customerId;
    }
    public void setShippingAddress(String shippingAddress) 
    {
        this.shippingAddress = shippingAddress;
    }

    public String getShippingAddress() 
    {
        return shippingAddress;
    }
    public void setEstimatedShippingDate(String estimatedShippingDate) 
    {
        this.estimatedShippingDate = estimatedShippingDate;
    }

    public String getEstimatedShippingDate() 
    {
        return estimatedShippingDate;
    }
    public void setActualShippingDate(String actualShippingDate) 
    {
        this.actualShippingDate = actualShippingDate;
    }

    public String getActualShippingDate() 
    {
        return actualShippingDate;
    }
    public void setLogisticsCompany(String logisticsCompany) 
    {
        this.logisticsCompany = logisticsCompany;
    }

    public String getLogisticsCompany() 
    {
        return logisticsCompany;
    }
    public void setLogisticsNumber(String logisticsNumber) 
    {
        this.logisticsNumber = logisticsNumber;
    }

    public String getLogisticsNumber() 
    {
        return logisticsNumber;
    }
    public void setTransportMode(String transportMode) 
    {
        this.transportMode = transportMode;
    }

    public String getTransportMode() 
    {
        return transportMode;
    }
//    public void setTransferStation(String transferStation)
//    {
//        this.transferStation = transferStation;
//    }
//
//    public String getTransferStation()
//    {
//        return transferStation;
//    }
//    public void setArrivalTimeAtTransfer(String arrivalTimeAtTransfer)
//    {
//        this.arrivalTimeAtTransfer = arrivalTimeAtTransfer;
//    }
//
//    public String getArrivalTimeAtTransfer()
//    {
//        return arrivalTimeAtTransfer;
//    }
    public void setFinalDestination(String finalDestination) 
    {
        this.finalDestination = finalDestination;
    }

    public String getFinalDestination() 
    {
        return finalDestination;
    }
    public void setEstimatedArrivalTime(String estimatedArrivalTime) 
    {
        this.estimatedArrivalTime = estimatedArrivalTime;
    }

    public String getEstimatedArrivalTime() 
    {
        return estimatedArrivalTime;
    }
    public void setActualArrivalTime(String actualArrivalTime) 
    {
        this.actualArrivalTime = actualArrivalTime;
    }

    public String getActualArrivalTime() 
    {
        return actualArrivalTime;
    }
    public void setNote(String note) 
    {
        this.note = note;
    }

    public String getNote() 
    {
        return note;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("orderId", getOrderId())
            .append("customerId", getCustomerId())
            .append("shippingAddress", getShippingAddress())
            .append("estimatedShippingDate", getEstimatedShippingDate())
            .append("actualShippingDate", getActualShippingDate())
            .append("logisticsCompany", getLogisticsCompany())
            .append("logisticsNumber", getLogisticsNumber())
            .append("transportMode", getTransportMode())
//            .append("transferStation", getTransferStation())
//            .append("arrivalTimeAtTransfer", getArrivalTimeAtTransfer())
            .append("finalDestination", getFinalDestination())
            .append("estimatedArrivalTime", getEstimatedArrivalTime())
            .append("actualArrivalTime", getActualArrivalTime())
            .append("note", getNote())
            .toString();
    }
}
